package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 任务计划对象 st_plan
 * 
 * @author wmao
 * @date 2024-07-19
 */
public class StPlan extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一标识符 */
    private String id;

    /** 计划名称 */
    @Excel(name = "计划名称")
    private String name;

    /** 生成标签数 */
    @Excel(name = "生成标签数")
    private Long tagCount;

    /** 数据资源 */
    @Excel(name = "数据资源")
    private String computeResources;

    /** 运行模式 */
    @Excel(name = "运行模式")
    private String execStrategy;

    /** 状态（0未生效 1已上线 2已停用） */
    @Excel(name = "状态", readConverterExp = "0=未生效,1=已上线,2=已停用")
    private String status;

    /** 最近运行时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最近运行时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastRunTime;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }

    public void setTagCount(Long tagCount) 
    {
        this.tagCount = tagCount;
    }

    public Long getTagCount() 
    {
        return tagCount;
    }

    public void setComputeResources(String computeResources) 
    {
        this.computeResources = computeResources;
    }

    public String getComputeResources() 
    {
        return computeResources;
    }

    public void setExecStrategy(String execStrategy) 
    {
        this.execStrategy = execStrategy;
    }

    public String getExecStrategy() 
    {
        return execStrategy;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setLastRunTime(Date lastRunTime) 
    {
        this.lastRunTime = lastRunTime;
    }

    public Date getLastRunTime() 
    {
        return lastRunTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("tagCount", getTagCount())
            .append("computeResources", getComputeResources())
            .append("execStrategy", getExecStrategy())
            .append("status", getStatus())
            .append("lastRunTime", getLastRunTime())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
